Adrian Perez [Wed, 2 May 2012 18:29:40 +0000 (21:29 +0300)]
ostbuild: Make --shell-on-failure flag to work
Fixes an issue which would cause ostbuild to fail to spawn the
debug shell and print a traceback instead.
Colin Walters [Wed, 2 May 2012 18:49:32 +0000 (14:49 -0400)]
ostbuild: More work on deploy commands
Colin Walters [Wed, 2 May 2012 14:25:58 +0000 (10:25 -0400)]
ostbuild: Use --from-file for buildroot compose for easier debugging
Colin Walters [Wed, 2 May 2012 11:55:11 +0000 (07:55 -0400)]
ostbuild: Rename shadow-repo-init -> init
Colin Walters [Wed, 2 May 2012 11:30:49 +0000 (07:30 -0400)]
qemu-pull: Update to use pull-local
Colin Walters [Wed, 2 May 2012 11:30:02 +0000 (07:30 -0400)]
ostbuild: Checksum full component metadata for --skip-built
If we're using --skip-built, we really do want to rebuild if anything
changed (like the build dependency, configure arguments etc.)
Colin Walters [Wed, 2 May 2012 00:51:29 +0000 (20:51 -0400)]
ostbuild: Break out git-mirror from resolve
Other bits
Colin Walters [Tue, 1 May 2012 23:28:39 +0000 (19:28 -0400)]
ostbuild: Use expanduser
Colin Walters [Tue, 1 May 2012 20:45:34 +0000 (16:45 -0400)]
ostbuild: Lots more
Colin Walters [Tue, 1 May 2012 14:21:33 +0000 (10:21 -0400)]
ostbuild: Resolve takes --manifest arg
Colin Walters [Tue, 1 May 2012 14:02:34 +0000 (10:02 -0400)]
ostbuild: Add tree-to-bin and bin-to-src
Adrian Perez [Thu, 26 Apr 2012 15:21:27 +0000 (18:21 +0300)]
ostbuild: Fix DB saving with /tmp and builddir in different volumes
This fixes the case where /tmp resides in one volume, and the build
directory in a different one: by storing the temporary file in the
same directory as the target one, we avoid the case in which os.rename()
would cross file system boundaries.
Reviewed-by: Colin Walters <walters@verbum.org>
Colin Walters [Fri, 6 Apr 2012 19:12:57 +0000 (15:12 -0400)]
ostbuild: Major rework
Colin Walters [Sun, 29 Apr 2012 23:05:26 +0000 (19:05 -0400)]
manifest local
Colin Walters [Fri, 27 Apr 2012 20:58:06 +0000 (16:58 -0400)]
ostbuild: Show ostbuild log messages in warningfilter again
Colin Walters [Thu, 26 Apr 2012 12:15:39 +0000 (08:15 -0400)]
gnomeos-install: Call ostree.gnome.org server "gnome", not "origin"
Colin Walters [Wed, 2 May 2012 14:21:19 +0000 (10:21 -0400)]
core: checkout: Add --from-file option too
Easier for debugging if we don't have to redirect stdin.
Conflicts:
src/ostree/ot-builtin-checkout.c
Colin Walters [Wed, 2 May 2012 14:21:41 +0000 (10:21 -0400)]
core: Improve error message if we hit an unreadable file
Colin Walters [Thu, 3 May 2012 12:33:34 +0000 (08:33 -0400)]
core: Add a mutex to cache data structures in preparation for threading
Conflicts:
src/libostree/ostree-repo.c
Colin Walters [Wed, 2 May 2012 23:15:19 +0000 (19:15 -0400)]
core: pull-local: Be a bit more verbose, don't open objects we already have
Colin Walters [Fri, 4 May 2012 19:38:21 +0000 (15:38 -0400)]
core: Avoid checksumming hardlinks that point into repository
By default, when doing a commit, scan all of our loose objects and
build up a (device,inode) -> checksum hash. Then when we're doing a
commit, if we see a file with that (device,inode) pair, we can avoid
checksumming it.
Colin Walters [Fri, 4 May 2012 18:22:09 +0000 (14:22 -0400)]
core: Drop --link-cache option, we do it by default now for archives
Colin Walters [Fri, 4 May 2012 15:02:15 +0000 (11:02 -0400)]
core: [INCOMPATIBLE CHANGE] Re-split archive content into .file and .filecontent
This will allow us to use hard links again for user-mode checkouts,
rather than the hackish link cache. It was pretty silly anyways to
have file objects be stored with just a small metadata header
prepended, but uncompressed.
Either they should be hardlinkable, or compressed (in pack files).
Colin Walters [Fri, 4 May 2012 17:40:25 +0000 (13:40 -0400)]
core: Handle zero-sized archives, improve fsck error message
Colin Walters [Fri, 4 May 2012 14:04:32 +0000 (10:04 -0400)]
core: Add valgrind framework, plug various memory leaks
Colin Walters [Fri, 4 May 2012 10:15:47 +0000 (06:15 -0400)]
core: Optimize commits to raw repositories
Avoid creating a temporary intermediate file in the case where we have
the total object length available.
Colin Walters [Thu, 3 May 2012 23:57:05 +0000 (19:57 -0400)]
core: Clean up object storage API
Rather than passing xattr/file_info for all objects, change the API to
assume we're passing the defined object stream for each type. Namely,
for OSTREE_OBJECT_TYPE_FILE, we're now giving the "archive file" data.
This significantly cleans up the code for committing to archive mode
repositories, at the cost of having to (at present) create an
intermediate temporary file when committing to raw repositories.
Colin Walters [Thu, 3 May 2012 20:07:18 +0000 (16:07 -0400)]
daemon: Use g_thread_new() for GLib 2.32
Colin Walters [Thu, 3 May 2012 17:26:24 +0000 (13:26 -0400)]
core: Increase type safety of some local alloc functions
Colin Walters [Thu, 3 May 2012 17:40:23 +0000 (13:40 -0400)]
build: Link with -Bsymbolic-functions
Avoids indirecting through PLT for internal calls, at the cost that we
can't use LD_PRELOAD to override internal functions (but we never
really want that, use a debugger).
Colin Walters [Tue, 1 May 2012 22:52:49 +0000 (18:52 -0400)]
core: Fix gcc uninitialized-variable warning
Colin Walters [Sun, 29 Apr 2012 16:32:37 +0000 (12:32 -0400)]
3.4: Update GDM patches
Colin Walters [Tue, 1 May 2012 21:43:26 +0000 (17:43 -0400)]
core: Rename local-clone to pull-local
Also change it to copy selective refs, rather than enumerating
all objects.
Colin Walters [Tue, 1 May 2012 21:28:25 +0000 (17:28 -0400)]
3.4: Update libxklavier, re-enable-introspection
This fixes gnome-shell too.
Colin Walters [Tue, 1 May 2012 20:26:10 +0000 (16:26 -0400)]
core: Fix 32/8 bit confusion in pack index listing
Colin Walters [Sat, 28 Apr 2012 14:50:03 +0000 (10:50 -0400)]
3.4: Pull in gtk-engines too
Colin Walters [Sat, 28 Apr 2012 15:02:41 +0000 (11:02 -0400)]
core: diff: Fast path unmodified directories
Colin Walters [Sat, 28 Apr 2012 11:54:40 +0000 (07:54 -0400)]
core: pack: Add --metadata-only argument
Useful for bare repositories.
Colin Walters [Wed, 25 Apr 2012 22:25:40 +0000 (18:25 -0400)]
core: Fix uninitialized variable
Colin Walters [Wed, 25 Apr 2012 13:56:43 +0000 (09:56 -0400)]
Merge remote-tracking branch 'aperezdc/wip'
Colin Walters [Wed, 25 Apr 2012 12:47:43 +0000 (08:47 -0400)]
core: local-clone: Delete leftover code assuming file objects are loose
Federico Mena Quintero [Thu, 19 Apr 2012 14:10:07 +0000 (09:10 -0500)]
Add a Development section to the README
Put in links to the wiki and the git repository for OSTree
Adrian Perez [Tue, 24 Apr 2012 00:39:01 +0000 (03:39 +0300)]
Remove trailing whitespace
Adrian Perez [Sun, 22 Apr 2012 22:56:15 +0000 (01:56 +0300)]
manifest: Fix path of PolicyKit repository
The old path being used is no longer available, making
"ostbuild resolve" bail out when trying to clone the
repository.
Adrian Perez [Sun, 22 Apr 2012 22:55:14 +0000 (01:55 +0300)]
Some corrections in gnomeos/README-build.md
Colin Walters [Tue, 17 Apr 2012 01:21:50 +0000 (21:21 -0400)]
core: Add ability for repositories to have a "parent"
This will be useful for ostbuild; a user can create their own archive
mode repository which transparently inherits objects from the
root-owned one in /ostree.
Colin Walters [Thu, 19 Apr 2012 00:36:16 +0000 (20:36 -0400)]
README.md: Note existence of wiki page
Adrian Perez [Wed, 18 Apr 2012 18:13:43 +0000 (21:13 +0300)]
switchroot: Properly check for number of arguments
The ostree-switch-root tool expects three arguments (argc=4): new root, OS
tree target, and init(8) binary to launch inside it. Also, the error message
when not enough arguments are passed now tells about the second argument
being the target OS tree.
Reviewed-by: Colin Walters <walters@verbum.org>
Carl-Anton Ingmarsson [Tue, 17 Apr 2012 20:01:49 +0000 (22:01 +0200)]
gnomeos-install.sh: retrieve full path to srcdir
This fixes the installation of the grub2 script.
Colin Walters [Mon, 16 Apr 2012 21:14:43 +0000 (17:14 -0400)]
core: Pull pack files individually
Colin Walters [Mon, 16 Apr 2012 21:13:54 +0000 (17:13 -0400)]
core: Cache pack indexes
This is a 10x speedup on heavy users of ostree_repo_find_object(),
such as ostree-pull.
Colin Walters [Fri, 13 Apr 2012 20:11:03 +0000 (16:11 -0400)]
triggers: Test for gconftool-2
This was done for the rest of the triggers.
Colin Walters [Fri, 13 Apr 2012 20:10:40 +0000 (16:10 -0400)]
ostbuild: Take advantage of link cache
This greatly speeds up construction of buildroots.
Colin Walters [Fri, 13 Apr 2012 18:32:25 +0000 (14:32 -0400)]
gnomeos: Update to NSS 3.13.4
In particular we no longer need the stupid Linux3.0.mk Linux3.1.mk
Linux3.2.mk files.
Colin Walters [Fri, 13 Apr 2012 12:32:02 +0000 (08:32 -0400)]
core: Add --link-cache option to checkout
This is a convenient way to have a lookaside directory of hard links,
which can greatly speed up checkouts. In the future we probably want
to push this down into the repository.
Colin Walters [Thu, 12 Apr 2012 02:47:48 +0000 (22:47 -0400)]
Release 2012.2
Colin Walters [Wed, 11 Apr 2012 19:18:34 +0000 (15:18 -0400)]
core: Re-unify on one OSTREE_OBJECT_TYPE_FILE
Having the archived vs not distinction in the object system wasn't
useful in light of pack files. In fact, we should probably move
towards generating a pack file per commit by default.
Colin Walters [Tue, 10 Apr 2012 20:40:22 +0000 (16:40 -0400)]
core: Clean up checksumming
Don't expose GChecksum in APIs. Add a new stream class which allows
us to pass an input stream somewhere, but gather a checksum as it's
read.
Move some bits of the internals towards binary csums.
Colin Walters [Tue, 10 Apr 2012 12:30:51 +0000 (08:30 -0400)]
core: Drop wrapping of metadata variants
Colin Walters [Tue, 10 Apr 2012 02:46:08 +0000 (22:46 -0400)]
core: Split pack files into data/metadata
This will allow us to download metadata first (separately), and in the
future we can have an improved metadata pack format that compresses
heavily.
Colin Walters [Mon, 9 Apr 2012 21:36:41 +0000 (17:36 -0400)]
core: Switch to 'ay' for checksums, drop versions/metadata
Colin Walters [Mon, 9 Apr 2012 21:39:11 +0000 (17:39 -0400)]
core: Drop 'compose' builtin
We'll just add this functionality to commit.
Colin Walters [Mon, 9 Apr 2012 20:31:46 +0000 (16:31 -0400)]
core: Clean up checksum API
We want to move towards guchar * for binary checksums.
Colin Walters [Wed, 11 Apr 2012 23:53:10 +0000 (19:53 -0400)]
core: unpack: Regenerate pack index after unpacking
Colin Walters [Wed, 11 Apr 2012 23:52:57 +0000 (19:52 -0400)]
core: Fix uninitialized variables
Colin Walters [Wed, 11 Apr 2012 23:48:22 +0000 (19:48 -0400)]
tests: Actually test pack functionality
With --keep-loose we were just using the loose objects.
Colin Walters [Mon, 9 Apr 2012 19:03:53 +0000 (15:03 -0400)]
core: Port builtins to local alloc macros
Colin Walters [Mon, 9 Apr 2012 19:45:20 +0000 (15:45 -0400)]
core: Port libostree to local alloc
Colin Walters [Mon, 9 Apr 2012 19:48:20 +0000 (15:48 -0400)]
core: Port libotutil to local-alloc
Colin Walters [Mon, 9 Apr 2012 18:04:02 +0000 (14:04 -0400)]
core: Add macros for local allocation
This is GCC-specific, but it makes the code significantly
cleaner.
Colin Walters [Mon, 9 Apr 2012 19:09:27 +0000 (15:09 -0400)]
core: Fix xattr API to conform to coding style
Colin Walters [Mon, 9 Apr 2012 18:18:00 +0000 (14:18 -0400)]
core: Fix a minor memory leak
Colin Walters [Sun, 8 Apr 2012 20:50:53 +0000 (16:50 -0400)]
core: pull: Add progress bar, allow pulling individual commits
Colin Walters [Fri, 6 Apr 2012 19:11:11 +0000 (15:11 -0400)]
core: checkout: Add --from-stdin option
This allows checking out many branches in one go, useful in
combination with the --union flag for ostbuild to combine a lot of
components.
Colin Walters [Fri, 6 Apr 2012 19:10:20 +0000 (15:10 -0400)]
ls: Add mode to print filenames as binary
This is useful to extract the file listing to another program.
Colin Walters [Fri, 6 Apr 2012 01:53:25 +0000 (21:53 -0400)]
gnomeos-install.sh: Fix link to -devel root
Now that we're using checkout --atomic-swap, there is no
-devel-current.
Diego Escalante Urrelo [Fri, 6 Apr 2012 01:43:55 +0000 (20:43 -0500)]
15_ostree: don't assume kernel arch names
uname -m is not always the suffix of the kernel image. Debian uses
-686-pae, but uname -m would say i686. This creates an infinite loop in
Debian.
Diego Escalante Urrelo [Fri, 6 Apr 2012 01:43:09 +0000 (20:43 -0500)]
gnomeos-clone-qemu: use bash explicitely
Diego Escalante Urrelo [Thu, 5 Apr 2012 05:56:29 +0000 (00:56 -0500)]
ostree-pull: GOptionEntry must be NULL terminated
Diego Escalante Urrelo [Thu, 5 Apr 2012 05:30:20 +0000 (00:30 -0500)]
gnomeos-install: don't cd into /ostree prematurely
The script will die and not proceed with the creation of the directory.
Diego Escalante Urrelo [Thu, 5 Apr 2012 05:29:55 +0000 (00:29 -0500)]
gnomeos-install: use /bin/bash, not /bin/sh
This scripts use bashisms, so use /bin/bash as the interpreter until
they are un-bashified.
Diego Escalante Urrelo [Thu, 5 Apr 2012 05:29:25 +0000 (00:29 -0500)]
gnomeos: update README script path
Colin Walters [Wed, 4 Apr 2012 03:45:48 +0000 (23:45 -0400)]
core: Associate branches with remotes, move trigger runs into checkout
Also add --atomic-retarget option to checkout. This does the magical
symlink dance to do atomic swaps between trees.
Colin Walters [Wed, 4 Apr 2012 03:45:28 +0000 (23:45 -0400)]
core: Clean up stale packfiles
Colin Walters [Tue, 3 Apr 2012 12:52:58 +0000 (08:52 -0400)]
core: Validate structure of objects in fsck
Colin Walters [Tue, 3 Apr 2012 12:52:44 +0000 (08:52 -0400)]
core: Make pull slightly more verbose
Colin Walters [Mon, 2 Apr 2012 23:52:22 +0000 (19:52 -0400)]
core: Drop "staged" state for objects, refactor pull to split metadata/data
Previously we had the "staged" state to ensure we didn't add a commit
object without the associated dirtree, etc. However it's
easier/better to just ensure in the pull command that we have all
referenced objects.
Also change pull to download metadata first. This will allow adding
a progress bar later.
Colin Walters [Mon, 2 Apr 2012 22:18:11 +0000 (18:18 -0400)]
core: Make fsck verify from commit objects
Rather than verifying every object, traverse all commit objects we
find. This is a better check, since primarily we care about being
able to check out trees. In the new packfile regime, this ensures
validity of packed data.
It also means we aren't checking loose objects that we most likely
don't care about.
Colin Walters [Mon, 2 Apr 2012 19:51:23 +0000 (15:51 -0400)]
core: Move commit/dirtree traversal into library
So it can more easily be reused by other builtins.
Colin Walters [Mon, 2 Apr 2012 21:41:04 +0000 (17:41 -0400)]
core: Fix a few memory leaks
Colin Walters [Mon, 2 Apr 2012 21:40:17 +0000 (17:40 -0400)]
core: Return input stream for raw repositories too
This bug is more obvious when fsck is rebased on top of
ostree_repo_load_file().
Colin Walters [Mon, 2 Apr 2012 17:49:23 +0000 (13:49 -0400)]
Release 2012.1
Colin Walters [Mon, 2 Apr 2012 17:42:09 +0000 (13:42 -0400)]
core: Only depend on GLib 2.30
Colin Walters [Sat, 31 Mar 2012 16:34:11 +0000 (12:34 -0400)]
Release 2012.0
This marks a new versioning scheme.
Colin Walters [Sat, 31 Mar 2012 14:37:51 +0000 (10:37 -0400)]
core: Add pack files
This concept is also directly inspired by git. At present, our
implementation is quite similar, except we don't have delta
compression.
Colin Walters [Sat, 31 Mar 2012 14:32:26 +0000 (10:32 -0400)]
core: Add stream->variant helper, as well as clear macros for ptrarray/hashtable
Colin Walters [Sat, 31 Mar 2012 14:32:02 +0000 (10:32 -0400)]
core: Add a few more GIO utility functions
Colin Walters [Wed, 14 Mar 2012 13:37:00 +0000 (09:37 -0400)]
core: Add helper functions to convert (checksum, objtype) pair to/from string
Colin Walters [Tue, 13 Mar 2012 21:06:06 +0000 (17:06 -0400)]
ostbuild: Add preserve_net config option
This is going to be necessary for the builder.
Colin Walters [Tue, 13 Mar 2012 17:09:05 +0000 (13:09 -0400)]
manifest: Move ostree back to master branch from git